約 5,704,811 件
https://w.atwiki.jp/ipubluedictionary/pages/122.html
.Net FrameworkのXmlReader, XmlWriterを使うことで Xmlファイルへの扱いが幾分ラクになります。 個人的にはアプリケーションの環境設定ファイルとしてしか使用していないので、 ほんのさわりの部分ぐらいしか扱っていないけれど、それでも使い方に クセがあるのでそこら辺でハマッた事とかをつらつらと。 XmlWriter基本的な流れ XmlReader基本的な流れ Read()を使うと? XmlWriter 基本的な流れ XmlReader 基本的な流れ Read()を使うと? かなり単純な例として a b text /b /a を扱ってみる。 このxmlファイルを XmlReader ^xr = XmlReader Create( xml_file ); while( xr- Read() ) { output( Convert ToString( xr- NodeType ) ); } とやってみると Element - Whitespace - Element - Text - EndElement - Whitespace - EndElement となる。 属性部は明示的に読みにいかない限り読まれない。 Whitespaceというのは、マークアップ間の空白(おそらく改行やスペース)のこと。 ためしに a b とつなげて記述すると WhiteSpaceはなくなる。 ちなみにマークアップっていうのは の部分の事っぽい。 xmlはマークアップとテキストのみで構成という前提があるようだ。
https://w.atwiki.jp/kota2426/pages/4.html
main関数はリンクするライブラリの中に実装されている。 #include "stdafx.h" #include boost/test/unit_test.hpp void my_test_function1() { ... } void my_test_function2() { ... } boost unit_test test_suite* init_unit_test_suite(int argc, char* argv[]) { boost unit_test test_suite* test = BOOST_TEST_SUITE("testsuite_name"); test- add(BOOST_TEST_CASE( my_test_function1)); test- add(BOOST_TEST_CASE( my_test_function2)); return test; } MSVCの場合 MSVCであればリンカの設定の代わりに以下のコードを埋めておくことができる #ifdef _MT #ifdef _DEBUG #pragma comment(lib,"libboost_unit_test_framework-vc71-mt-sgd.lib") #else //_DEBUG #pragma comment(lib,"libboost_unit_test_framework-vc71-mt-s.lib") #endif//_DEBUG #else//_MT #ifdef _DEBUG #pragma comment(lib,"libboost_unit_test_framework-vc71-sgd.lib") #else //_DEBUG #pragma comment(lib,"libboost_unit_test_framework-vc71-s.lib") #endif//_DEBUG #endif//_MT ビルド後のイベントに以下のコマンドを追加しておくと ビルドのたびにテストが起動。 "$(TargetDir)$(TargetName).exe" --log_level=messages --build_info=yes (次行に続く) --result_code=no --report_level=short --catch_system_errors=no
https://w.atwiki.jp/ipubluedictionary/pages/109.html
表示優先 フォームによるキーイベント処理 Objectクラスのメソッドのオーバーライド フォームデザインがエラーで表示されない! ボタンを1つ配置したフォーム生成時のイベント発生順 規定プロパティ 表示優先 例えばフォームデザインでフォームにpictureBoxを登録し、Dock=Fillに設定、 その後にstatusStripを登録するとpictureBoxの下側がstatusStripにより 隠れてしまう。 逆順に登録していればこのような現象は起こらないが、実際登録してしまった場合は どのように登録順番を変えるか。 それはフォームにコントロールをAddする順番を変えればいい。 その場合の順番は優先度が低いものから先に登録する。 CLRフォームを作成すると作られるForm.h内では以下のようにコントロールが 登録されてるはずだが、 this- Controls- Add(this- pictureBox); this- Controls- Add(this- statusStrip); こうするとstatusStripが配置され、その中にpictureBoxがDock=Fill状態で 配置されることになる。 見た目と実際の順番が異なるので注意。 フォームによるキーイベント処理 通常、キーイベントはフォーム上のフォーカスを持つコントロールに発生するので、 何も考えずにFormのKeyDownイベントとかをチェックしてもイベントは発生しない。 ただ、例えばESCキーを押したらフォームを閉じたいなど、キーを取得したい場合も多々ある。 その場合はFormのKeyPreviewをTrueに設定してやることで、キーイベントが フォーカスを持つコントロールに渡される前に、フォーム側で検知することができるようになる。 イベント処理に渡されるKeyEventArgsもしくはKeyPressEventArgsのプロパティである Handledにtrueを設定することで、コントロールではイベントを発生しないようにできる。 ただし、例えばtextBoxなどで使う場合、イベントが発生しなくなるだけで、ユーザーの入力は そのまま反映されてテキストボックスに書き込まれる。 それすら制御したい場合はSuppressKeyPressプロパティを仕様する。 話がわき道に逸れたが、フォームがキーイベントを検知した場合、どのキーが押されたかを知るには void textBox1_KeyDown( Object^ /*sender*/,System Windows Forms KeyEventArgs^ e ) { if( e- KeyCode == Keys Escape ) { ... } } のような感じでKeyCodeプロパティとKeys列挙体を使用する。 Objectクラスのメソッドのオーバーライド .NET Frameworkの全クラスの基本クラスであるObjectクラス。 このクラスのToStringメソッドは、特にオーバーライドしないで使用すると クラス名が返ってくる。 例えば public ref class Sample { public String ^name; } というクラスを作った場合、ToStringメソッドは"Sample"を返す。 ※Objectクラスの継承は暗黙に行われる ここで、nameメンバをToString()の返り値にしたい場合は以下のようにする。 public ref class Sample { public String ^name; public virtual String^ ToString() override { return name; } }; こうすることでnameの内容がToString()メソッドによって得られる。 注意したいのはoverrideキーワードである。 C++ではvirtualキーワードだけでオーバーライドできていたが、 C++/CLIではこのキーワードを使わなければならない。 ちなみにnewキーワードを使うと、 スーパークラス内で仮想関数として宣言されていないメンバ関数を上書きという形で 宣言しなおすことができるっぽい。 ちなみになんでこんなことをしたのかというと、ListBoxに要素を追加する際、 AddRange()メソッドはarray Object^ を引数に受け取り、 要素をリストボックスに追加するのにToString()メソッドを使っていたからである。 配列の各要素を示す文字列を表示したかったため、ToString()をオーバーライドしてみたかった、 という話。 フォームデザインがエラーで表示されない! いくつかの理由により簡単にフォームデザインがエラーで利用できなくなる…。 ・#pragma region Windows Form Designer generated code ~ #pragma endregionをいじっちゃった ここは触れないようにするのが無難。変更するのであればコンストラクタ等で。ただ、コントロールの登録順を変えたい場合はいじるしかない…気がする。 ・フォームのクラスよりも前に何かしらのクラスを宣言しちゃってる ヘッダに記述してインクルドすべし。同一ファイル内でフォームクラスよりも前にクラス宣言とかしたら駄目。 ボタンを1つ配置したフォーム生成時のイベント発生順 フォームデザイナでボタンを1つ配置した状態のフォームを生成したときのイベント順は以下のとおり。 Button [ParentChanged] Form [Load] Form [Layout] Button [Enter] Form [Activate] Form [Shown] Form [Paint] Form [Paint] Button [Paint] Button [Validating] Button [Validated] 検証したイベントは Form Button Activated Deactivate Enter Enter Leave Leave Validated Validated Validating Validating Load Shown Layout Layout Paint Paint LocationChanged ParentChanged Move ちなみに、フォームデザイナで登録すると、コントロールの位置やサイズなどは イベント登録前にやってしまうコードになるので、LocationChanged や Moveイベントは発生しない 規定プロパティ クラスには規定プロパティと呼ばれるものが設定でき、記述時にそのプロパティは省略できる。 例えばTextBoxの規定プロパティはTextであり、 TextBox = "てきすと"; みたいな記述をすると、コンパイル時に解決されてTextプロパティに値が代入される。 よくCollection系クラスにある事なのだが、Itemプロパティにアクセスしようとすると 既定プロパティ (インデクサ) にアクセスするためには default を使用してください というコンパイルエラーが発生する。 ためしに Collection- default[idx]; にしてみると、コレクションが持つオブジェクトにアクセスできる。 また、規定プロパティなので、 Collection[idx]; という記述でもアクセスできる。 ただ、なぜItem[]という形ではアクセスできないのかは謎。 規定プロパティを自分で指定するのにはdefaultを使ってプロパティを宣言する。
https://w.atwiki.jp/appwiki/pages/18.html
UIKit Framework UIView UIView UIImage UIImageView UILabel UIWebView UIAlertView UINavigationBar UIActivityIndicatorView UIBarButtonItem UIToolBar UIPickerView UITabBarItem UIProgressView UIViewControler UINavigationController UIImagePickerController UITabBarController UITableViewController UIScrollView UIScrollView UITableView UIControl UIControl UIButton UITextField UISlider UISwitch NSObject UIColor UIFont
https://w.atwiki.jp/makimaaki/pages/13.html
1.PHPプログラムの書式 文字コード 特別な理由が無い限り「UTF-8 BOM(Byte Order Mark)なし」を推奨 特に「BOM」コードが付いていると動作に支障が出ることがあるので注意が必要 改行コード 行末は「ラインフィード(LF)のみにしなければならない(16真数では「0x0a」)」 Windowsの「キャリッジリターン(CR)」やMachintoshでの「キャリッジリターン+ラインフィード(CRLF)は利用しない」 開始と終了 PHPでの開始タグには短縮形「 ?」は使用せず、「 ?php」を使用する 終了タグの後に空白や改行があると、それをブラウザに出力してしまう為、終了タグ「? 」は使用しない(PHPは終了タグがなくても正常に動作する) 終了タグは使用しない ?php プログラムを記述 インデント ソースの可視性を高める為、必ずインデントを行う インデントは、「半角空白4文字」で行う タブを使用しない プログラム全体のインデントは行わない 良い例 ?php $message = PHP フレームワークの本命「Zend Framework」 ; echo $message; 悪い例 ?php $message = PHP フレームワークの本命「Zend Framework」 ; echo $message; 1行の長さ プログラムソースの一行の長さは80文字までを推奨。最大でも120文字とする長すぎる場合の対処(書く対処により見にくくなった場合、空白で微調整してください) カンマの後で折り返す 演算子の前で折り返す 二つ目以降のインデントでは、前の行と同じ位置に左端を揃える 例1:メソッド呼び出しの記述例 //悪い例(半角空白4つだと読みづらい) someMethod($longExpression1,$longExpression2,$longExpression3, $longExpression4,$longExpression5,); //良い例(揃えると見やすくなった) someMethod($longExpression1,$longExpression2,$longExpression3, $longExpression4,$longExpression5,); //良い例 $var = someMethod1($longExpression1, //メソッドの戻り値を変数に代入する場合 someMethod2($longExpression2, //メソッドの引数にメソッドを記述する場合 $longExpression3)); 例2:数式の記述 //悪い例(かっこの位置がわかりづらい) $longName1 = $longName2 * ($longName3 + $longName4 - $longName5) + 4 * $longName5; //良い例 $longName1 = $longName2 * ($longName3 + $longName4 - $longName5) + 4 * $longName6; 例3:インデントが深くなり右に寄ってしまう $var = someMethod1($longExpression1, someMethod2($longExpression3, $longExpression4))); //良い例 いったん、別変数で持つなどして深いインデントを避ける $var = someExpression3($longExpression3,$longExpression4); $var = someExpression2($longExpression2,$var); $var = someExpression1($longExpression1,$var); 例4:ifの記述 if(($condition1 $condition4) || ($condition3 $condition4) || !($condition5 $condition6)){ //悪い改行 doSomethingAction(); //この行が判りにくくなる } こうしよう if(($condition1 $condition2) || ($condition3 $condition4) || !($condition5 $condition6)){ doSomethingAction(); } //あるいはこうする if( ($condition1 $condition2) || ($condition3 $condition4) || ($condition5 $condition6) ){ doSomethingAction(); } 例5:三項演算子の記述 $alpha = ($aLongBooleanExpression) ? $beta $gamma; $alpha = ($aLongBooleanExpression) ? $beta $gamma; $alpha = ($aLongBooleanExpression) ? $beta $gamma;
https://w.atwiki.jp/tamotech/pages/39.html
Struts 1.3系 S2 Spring Framework iBatis
https://w.atwiki.jp/flex_framework/pages/12.html
<Cairngormの批評と図式> 1.Cairngormの批評 項目名 Cairngorm 批評 理解しやすさ ◎ イベントを一元管理化しているので、イベントと実行されるロジックが理解しやすいです 導入しやすさ ○ オープンソースというところから、英語版ではありますがサンプルもあるので、比較的導入が簡単です。 コーディング量 × 1イベントにつき、1実行ロジックというプログラムになってしまいますので、コーディングの量はどうしても増えてしまいます。 用意されているクラス郡の使いやすさ ○ 下記フローチャートをご覧いただきますとわかりますが、基本的なクラスは多くありません。また役割もはっきりしているので使いやすいと思います。 テスタビリティ × これといったテストの方法がなく、「目視による動作確認テスト」くらいしか有効なテスト手段がありません。 用意されているドキュメントの量 ◎ オープンソースということでサンプルは比較的多いです。ほとんどが英語ですが、サンプルもあるので、わかりやすいと思います。 サーバー技術との親和性 ◎ サーバーとFlexのロジックを分離する、というのもこのフレームワークの目的ですので、サーバサイドの技術を選びません。 改造のしやすさ × 1イベントにつき、1実行ロジックということは既に述べましたが、その都合上、どうしても1イベント、複数実行ロジックという改造が難しい点があります(できないわけではありません)。 保守のしやすさ ○ 1イベント、1実行ロジックですので、イベントを見れば実効されているロジックがわかりますので、あちこち見る必要がなく、見やすいプログラムになります。 知名度 ○ Adobe社がオープンソースとしているので、知名度は高いかと。 導入しやすい案件規模 画面数が~30くらいまで 1イベント、1実行ロジックという形式をとりますので、画面数が多くなればそれだけイベント、ロジックの数が増えてきます。画面数が増えればイベントが増えるとうことで、イベントが一元管理される、ということはそれだけ管理するイベントが膨大になりますので、それだけで大変になります。 教育コースが存在するか × 今のところ私は教育コースは知りません。独自で解釈しています。 2.Cairngormのフローチャート図 元の大きな画像はこちら 「フローチャート解説」 View層ではCairngormEventというものを発生させて、それをController層に通知するようになっています。 そのEventを受け取ったControllerは1イベント、1実行ロジックという風にマッピングされている実行ロジック(Cairngormの中では Commandと表現しています)を呼び出して、そのコマンドの中で業務ロジックを記述し、データバインドをしているDataModelへ データを渡すようにしています。 実際にサンプルを動かしてもらったほうが早いでしょう。 ※サンプルはAdobeAIRで作られています。FlexBuilder3のプロジェクトをアーカイブしたものをサンプルとしておきます。 サンプルはこちらから 実行していただけるとよりわかりやすいと思います。 サンプルの解説はこちらから メリット イベントが一元管理されどのイベントがどのロジックを呼んでいるかすぐにわかる。 サーバサイドとのやりとりが窓口がDelegateになることにより、サーバサイドからの返却がわかりやすい。 デメリット 画面数が増えるとイベントを管理するControllerが煩雑になり、可読性を損なう。 Event、Commandがすべて1対1になるので、イベントの数の2倍のクラス(EventクラスとCommandクラス)ができてしまう。 なまえ: コメント
https://w.atwiki.jp/pjsvr2007/pages/21.html
Project Server 本体のインストールまでに必要な各種作業についてです。 IISの有効化 IIS を有効化する際、Windows Server 2003 のインストールCD(1枚目)が必要になるので、あらかじめ準備しておいてください。 まず、「管理ツール」→「サーバの役割管理」をクリックし、「サーバの構成ウィザード」画面を開きます。 「アプリケーション サーバー(IIS, ASP.NET)」にチェックを入れ、「次へ」を押します。 「ASP.NETの有効化」にチェックを入れ、「次へ」を押します。 そのまま「次へ」を押します。 「完了」を押し、ウィザードを完了します。 以上でIISが有効化されます。 ASP.NET v2.0 の登録 Windows Update/Microsoft Update のいずれかで、.NET Framework v2.0, .NET Framework 3.0 の両方をインストールします。通常は、これだけで ASP.NET v2.0 が正しくインストールされます。正常にインストールが完了すると、IISマネージャにて以下のように表示されます。 もしうまくインストールされていない場合は、以下のコマンドを実行してみてください。 C \Documents and Settings\Administrator C \WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i ASP.NET (2.0.50727) のインストールを開始します。 .......................... ASP.NET (2.0.50727) のインストールが完了しました。
https://w.atwiki.jp/yuksew/pages/18.html
Play framework (ぷれい ふれーむわーく) Googleが作成したJavaとScalaのためのMVCフレームワーク
https://w.atwiki.jp/takeyori/pages/18.html
Zend FrameWorkについてのメモ 推奨のコーディング規約について 訪問者記録 本日: - 今まで: -